summaryrefslogtreecommitdiffstats
path: root/src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt')
-rw-r--r--src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt
index ffbfa9337..244091aec 100644
--- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt
+++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/ViewUtils.kt
@@ -3,8 +3,10 @@
package org.yuzu.yuzu_emu.utils
+import android.text.TextUtils
import android.view.View
import android.view.ViewGroup
+import android.widget.TextView
object ViewUtils {
fun showView(view: View, length: Long = 300) {
@@ -57,4 +59,35 @@ object ViewUtils {
}
this.layoutParams = layoutParams
}
+
+ /**
+ * Shows or hides a view.
+ * @param visible Whether a view will be made View.VISIBLE or View.INVISIBLE/GONE.
+ * @param gone Optional parameter for hiding a view. Uses View.GONE if true and View.INVISIBLE otherwise.
+ */
+ fun View.setVisible(visible: Boolean, gone: Boolean = true) {
+ visibility = if (visible) {
+ View.VISIBLE
+ } else {
+ if (gone) {
+ View.GONE
+ } else {
+ View.INVISIBLE
+ }
+ }
+ }
+
+ /**
+ * Starts a marquee on some text.
+ * @param delay Optional parameter for changing the start delay. 3 seconds of delay by default.
+ */
+ fun TextView.marquee(delay: Long = 3000) {
+ ellipsize = null
+ marqueeRepeatLimit = -1
+ isSingleLine = true
+ postDelayed({
+ ellipsize = TextUtils.TruncateAt.MARQUEE
+ isSelected = true
+ }, delay)
+ }
}